package com.dtcnet.skmvp.mvp.view;

import android.os.Bundle;
import android.view.LayoutInflater;

import androidx.viewbinding.ViewBinding;

import com.dtcnet.skmvp.dagger.component.AppComponent;

public interface IFragment<VB extends ViewBinding> {

    default void initGetDataFromParent(Bundle savedInstanceState) {
    }

    default void registerDagger(AppComponent appComponent) {
    }

    //    View getContextView(LayoutInflater inflater);
    VB viewBinding(LayoutInflater inflater);

    default void initBindWidget() {
    }

    default void initSetListener() {
    }

    default void initLoadData() {
    }

    // 执行懒加载方法(第一次加载数据，为了和子类的lazyLoadData分开而使用不同的方法名)
//    default void firstLoadData(){}
    // 执行onResume方法时调用
    default void showPage(boolean isFirst) {
    }

    // 执行onPause方法时调用
    default void hiddenPage() {
    }

}
